package com.wyzz.hr.pojo.base;

import java.io.Serializable;
import java.util.Date;

import com.wyzz.hr.base.BaseDomain;
import com.wyzz.hr.pojo.Emphistoryjob;
import com.wyzz.hr.pojo.Employee;

public abstract class BaseEmphistoryjob extends BaseDomain implements
		Serializable {

	public BaseEmphistoryjob() {
		hashCode = 0x80000000;
		initialize();
	}

	public BaseEmphistoryjob(String ehjId) {
		hashCode = 0x80000000;
		setEhjId(ehjId);
		initialize();
	}

	protected void initialize() {
	}

	public String getEhjId() {
		return ehjId;
	}

	public void setEhjId(String ehjId) {
		this.ehjId = ehjId;
		hashCode = 0x80000000;
	}

	public String getEhjCompany() {
		return ehjCompany;
	}

	public void setEhjCompany(String ehjCompany) {
		this.ehjCompany = ehjCompany;
	}

	public Date getEhjDateStart() {
		return ehjDateStart;
	}

	public void setEhjDateStart(Date ehjDateStart) {
		this.ehjDateStart = ehjDateStart;
	}

	public Date getEhjDateEnd() {
		return ehjDateEnd;
	}

	public void setEhjDateEnd(Date ehjDateEnd) {
		this.ehjDateEnd = ehjDateEnd;
	}

	public String getEhjPosition() {
		return ehjPosition;
	}

	public void setEhjPosition(String ehjPosition) {
		this.ehjPosition = ehjPosition;
	}

	public String getEhjDescription() {
		return ehjDescription;
	}

	public void setEhjDescription(String ehjDescription) {
		this.ehjDescription = ehjDescription;
	}

	public String getEhjCreateBy() {
		return ehjCreateBy;
	}

	public void setEhjCreateBy(String ehjCreateBy) {
		this.ehjCreateBy = ehjCreateBy;
	}

	public Date getEhjCreateDate() {
		return ehjCreateDate;
	}

	public void setEhjCreateDate(Date ehjCreateDate) {
		this.ehjCreateDate = ehjCreateDate;
	}

	public Employee getEmployee() {
		return employee;
	}

	public void setEmployee(Employee employee) {
		this.employee = employee;
	}

	public String toString() {
		return (new StringBuilder()).append(ehjId).append(ehjDateStart).append(
				ehjDateEnd).append(ehjCompany).append(ehjPosition).append(
				ehjDescription).append(ehjCreateBy).append(ehjCreateDate)
				.append(employee).toString();
	}

	public boolean equals(Object obj) {
		if (null == obj)
			return false;
		if (!(obj instanceof Emphistoryjob))
			return false;
		Emphistoryjob emphistoryjob = (Emphistoryjob) obj;
		if (null == getEhjId() || null == emphistoryjob.getEhjId())
			return false;
		else
			return getEhjId().equals(emphistoryjob.getEhjId());
	}

	public int hashCode() {
		if (0x80000000 == hashCode) {
			if (null == getEhjId())
				return super.hashCode();
			String hashStr = (new StringBuilder()).append(getClass().getName())
					.append(":").append(getEhjId().hashCode()).toString();
			hashCode = hashStr.hashCode();
		}
		return hashCode;
	}

	public String getEhjLastChangeBy() {
		return ehjLastChangeBy;
	}

	public void setEhjLastChangeBy(String ehjLastChangeBy) {
		this.ehjLastChangeBy = ehjLastChangeBy;
	}

	public Date getEhjLastChangeTime() {
		return ehjLastChangeTime;
	}

	public void setEhjLastChangeTime(Date ehjLastChangeTime) {
		this.ehjLastChangeTime = ehjLastChangeTime;
	}

	public static String REF = "Emphistoryjob";
	public static String PROP_EHJ_COMPANY = "ehjCompany";
	public static String PROP_EMPLOYEE = "employee";
	public static String PROP_EHJ_DATE_END = "ehjDateEnd";
	public static String PROP_EHJ_DATE_START = "ehjDateStart";
	public static String PROP_EHJ_CREATE_DATE = "ehjCreateDate";
	public static String PROP_EHJ_CREATE_BY = "ehjCreateBy";
	public static String PROP_EHJ_DESCRIPTION = "ehjDescription";
	public static String PROP_EHJ_POSITION = "ehjPosition";
	public static String PROP_EHJ_ID = "ehjId";
	public static String PROP_EHJ_LAST_CHANGE_BY = "ehjLastChangeBy";
	public static String PROP_EHJ_LAST_CHANGE_TIME = "ehjLastChangeTime";
	private int hashCode;
	private String ehjId;
	private String ehjCompany;
	private Date ehjDateStart;
	private Date ehjDateEnd;
	private String ehjPosition;
	private String ehjDescription;
	private String ehjCreateBy;
	private Date ehjCreateDate;
	private String ehjLastChangeBy;
	private Date ehjLastChangeTime;
	private Employee employee;

}
